package cn.wen.yinxiu.member.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import cn.wen.yinxiu.common.entity.BaseEntity;

import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

/**
 * 用户表
 *
 * @ClassName: UsersEntity
 * @Author 小飞
 * @Email coderwen22@163.com
 * @Date 2023-05-21 22:19:26
 * @Description: 用户实体类
 */
@Data
@TableName("y_users")
public class UsersEntity extends BaseEntity implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 用户id
	 */
	@TableId(value = "id", type = IdType.AUTO)
	private Long id;
	/**
	 * 音秀账号（yx + 年份后两位 + 月份 + 分布式5位递增）yx230512345
	 */
	private String account;
	/**
	 * 微信相关 openId
	 */
	private String openId;
	/**
	 * 用户名称
	 */
	private String username;
	/**
	 * 手机号：可做登录功能
	 */
	private String userPhone;
	/**
	 * 用户密码（MD5加密）
	 */
	private String password;
	/**
	 * 关注总数
	 */
	private Integer followCount;
	/**
	 * 粉丝总数
	 */
	private Integer followerCount;
	/**
	 * 用户头像
	 */
	private String avatar;
	/**
	 * 用户个人页顶部大图
	 */
	private String backgroundImage;
	/**
	 * 个人简介
	 */
	private String signature;
	/**
	 * 出生日期
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
	private Date birthday;
	/**
	 * 性别：男、女
	 */
	private String gender;
	/**
	 * 获赞数
	 */
	private Long totalFavorited;
	/**
	 * 作品数
	 */
	private Integer worksCount;
	/**
	 * 喜欢数
	 */
	private Integer favoriteCount;
	/**
	 * 在线状态：0：离线 1：在线
	 */
	private Integer onlineStatus;
	/**
	 * 最近登录时间
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
	private Date lastLoginTime;
	/**
	 * 最近登录的IP地址
	 */
	private String lastLoginIp;
	/**
	 * 禁言状态：1：正常 0：禁言
	 */
	private Integer commentStatus;
	/**
	 * 3：操作异常冻结 2:密码多次错误冻结 1:可用 0:禁用
	 */
	private Integer status;
	/**
	 * 主页访问量
	 */
	private Long homeViewCounts;

}
